Public Sub SearchDir(sDir As String, Ex As String, Str As String, TV As TreeView)
On Error GoTo err
TV.Nodes.Clear
File = sDir & Dir(sDir & Ex)
If File <> "" Then
    SearchInFile File, Str, TV
End If
Do While Right(File, 1) <> ""
    File = sDir & Dir
    If File <> "" Then
SearchInFile File, Str, TV
    End If
Loop
err:
 Exit Sub
End Sub
Public Sub SearchInFile(ByVal File As String, SStr As String, TV As TreeView)
On Error GoTo err
FileName = File
FN = FreeFile
Open FileName For Input As FN
MainName = "File" & C  ''''
    Do While Not EOF(FN)
        Ln = Ln + 1     'Line Number
        Line Input #FN, LineX
        Result = InStr(LineX, SStr)
        If Result <> 0 Then     'If Find any word
            MailN = MailN + 1
            If MailN = 1 Then
                TV.Nodes.Add , , MainName, FileName
                C = C + 1
            End If
            TV.Nodes.Add MainName, 4, MainName & "Line" & Ln, "Line = " & Ln & " : " & LineX
        End If
    Loop
Close #FN
'                   Error Sub
err:
If Right(FileName, 1) = "\" Then
Exit Sub
End If
        Exit Sub
End Sub

